Many systems benefit from, or require, real-time information about location and/or orientation (pointing direction) of the systems. Examples include augmented reality (AR) glasses (head-mounted displays), guided munitions and aircraft. For example, an AR system needs information about its location in space and its pointing direction (collectively referred to as “pose”) in order to accurately overlay graphics, such as virtual objects or text, on an image or view of the real world.
One conventional method for automatically determining pose involves use of reference points in the real world that are identified by visible marks (“fiducial markers” or simply “fiducials”) and have known locations. Fiducials may be manually placed in a real world environment in which a system will operate, such as by adhering tags bearing matrix barcodes (often referred to as Quick Response Codes or “QR” codes) on objects in the real world. Optionally or alternatively, fiducials may be intrinsic to the environment, such as doorways, tables, signs or edges and corners of real world objects. Other methods for automatically determining pose involve illuminating a scene with structured visible or invisible, such infrared (IR), light, or measuring time-of-flight of light signals between objects and a camera to automatically measure distances to the objects.
However, many of these approaches rely on building a virtual map of the environment and then using the map to localize position. These approaches require significant computational resources and memory. In addition, they depend on static features in the environment to build and maintain the virtual map and are, therefore, brittle to changes in that environment. In other words, once a mapped feature moves, it must be re-mapped. Active systems, such as structured light systems, consume power flooding the environment with light. Furthermore, such active systems do not perform well or at all outdoors in direct sunlight.
Instead of fiducials or structured light, some systems use inertial measurement units (IMUs) to measure forces and angular rates of change (rotations) about one, two or three axes to ascertain system pose. However, IMU-based systems are known to accumulate error over time (drift) and to exhibit repeatability problems. Some IMU-based navigation systems include global positioning system (GPS) receivers to ascertain location, but not pointing direction, from satellite signals and occasionally correct for the drift in the IMU-based systems. However, GPS receivers require that their antennas have clear views of the sky, which may not be available inside buildings, in “urban canyons,” or in other such environments where clear views of the sky are otherwise unavailable.